/* eslint-disable */

import { AxiosRequestConfig } from 'axios';
import { request } from '../../utils/request';

export interface PostSingerPageRes {
  code: string; // 返回编码
  msg: string; // 返回消息
  data: {
    current: number;
    pageSize: number;
    total: number;
    list: Array<{
      albumNum: number; // 专辑数量
      trackNum: number; // 歌曲数量
      mvNum: number; // 视频数量
      ktrackNum: number; // 伴奏数量
      kalbumNum: number; // 伴奏专辑数量
      longAlbumNum: number; // 节目专辑数量
      longTrackNum: number; // 作品单集数量
      singerPhotos: Array<{
        singerId: number; // 艺人ID 同t_singer.Fsinger_id
        isOfficial: number; // 是否官方 默认值：0 0 否 1 是
        id: number;
        photoUsing: number; // 是否使用中 解释：图片删除了，Fusing=0 默认值：0 定义： 0 未使用 1 使用中
        orderIndex: number; // 图片顺序 多图的顺序index 默认：0 代表第一张
        photoPath: string; // 图存储 解释：cos中路径，用竖线隔开，可用于生成下载url。 Appid|Bucket|ObjectPath
        photoUrl: string; // 图片url 解释：拼接的下载url
        md5: string; // 文件md5 解释：文件md5值，用于判断文件是否变化
        photoSize: number; // 源图文件大小
        photoHeight: number; // 源图高
        photoWidth: number; // 源图宽
        qCfs: string; // Q音图存储 解释：跟Q音曲库保持一致；存储可能有多种，cfs、cos、http
        qUrl: string; // Q音图片url 解释：下载url
        insertTime: string; // 插入时间
        modifyTime: string; // 修改时间
      }>;
      singerMap: {
        id: number;
        globalId: number; // TME ID
        qqId: number; // Q音ID
        kgId: number; // 酷狗ID
        kwId: number; // 酷我ID
        umId: number; // 爱听ID
        lrId: number;
        tempId: number;
        musicianId: number; // 音乐人
        insertTime: string; // 插入时间
        modifyTime: string; // 修改时间
        insertFrom: number; // 数据来源 0 未知 1 系统对接 2 人工创建 3 历史曲库迁移 4 批量导入 5 自助管理平台 6 音乐人 7 Q音上报 8 酷我上报 9 酷狗上报 10 Q音主播 11 酷我主播 12 酷狗主播 13 爱听上报 14 K歌上报 15 TME曲库同步 16 懒人听书 17 懒人主播 18 TME Live 19 高危曲库 20 互联网爬取
      };
      singerId: number; // TME艺人ID
      srcSingerId: number; // 官方艺人ID 解释：国际标准人名区别码（ISNI）
      srcSingerName: string; // 官方艺人名
      singerName: string; // 艺人名
      transName: string; // 艺人翻译名
      otherName: string; // 艺人其他名
      nameSpell: string; // 艺人名拼音
      area: number; // 活跃地区 解释：歌手主要的活动地区 默认值：6 定义如下： 0  港台 1  内地 2  日韩 3  欧美 4  其他 5  东南亚 6  未知
      birthCountry: number; // 出生国家/地区 解释：歌手的出生国家 <p> 默认值：0 定义如下： 0 未知 1 香港 2 台湾 3 内地 4 日本 5 韩国 6 美国 7 英国 8 法国 9 德国 10 俄罗斯 11 西班牙 12 意大利 13 丹麦 14 澳大利亚 15 加拿大 16 葡萄牙 17 波兰 18 希腊 19 巴西 20 印度 21 泰国 22 印尼 23 埃及 24 马来西亚 25 阿拉伯 26 瑞典 27 荷兰 28 挪威 29 芬兰 30 爱尔兰 31 比利时 32 奥地利 33 罗马尼亚 34 瑞士 35 新西兰 36 墨西哥 37 牙买加 38 阿根廷 39 匈牙利 40 土耳其 41 捷克 42 冰岛 43 乌克兰 44 新加坡 45 以色列 46 南非 47 东南亚 48 波多黎各 49 菲律宾 50 古巴 51 爱沙尼亚 52 哥伦比亚 53 伊朗 54 黎巴嫩 55 保加利亚 56 智利 57 斯洛伐克 58 亚美尼亚 59 拉脱维亚 60 立陶宛 61 乌兹别克斯坦 62 委内瑞拉 63 越南 64 阿尔及利亚 65 阿塞拜疆 66 白俄罗斯 67 马耳他 68 巴基斯坦 69 尼日利亚 70 秘鲁 71 斯洛文尼亚 72 南斯拉夫 73 塞浦路斯 74 格鲁吉亚 75 马里 76 特立尼达和多巴哥 77 巴哈马 78 海地 79 克罗地亚 80 科特迪瓦 81 吉尔吉斯坦 82 澳门 83 斯威士兰 84 阿富汗 85 安哥拉 86 玻利维亚 87 文莱 88 喀麦隆 89 佛得角 90 哥斯达黎加 91 吉布提 92 多米尼加共和国 93 萨尔瓦多 94 几内亚 95 洪都拉斯 96 伊拉克 97 约旦 98 科威特 99 卢森堡 100 马里亚纳群岛 101 摩纳哥 102 蒙古 103 荷属安德烈斯 104 尼加拉瓜 105 尼日尔 106 圣马力诺 107 塞内加尔 108 斯里兰卡 109 突尼斯 110 阿拉伯联合酋长国 111 乌拉圭 112 缅甸 113 朝鲜
      type: number; // 艺人类型 解释：根据歌手性别或属性划分的类型 默认值：0 定义如下： 0 男 1 女 2 组合 3 其他 4 影视 5 虚拟 6 综艺 7 团体
      status: number; // 艺人状态 解释：歌手在曲库中的状态 默认值：1 定义如下： 0  停用 1  上架
      isHot: number; // 热门艺人 解释：集团各平台热门艺人标识 默认值：0 定义如下： 0否 1是
      replaceSingerId: number; // 保留歌手ID
      singerDesc: string; // 艺人简介
      createUser: string; // 创建人
      insertTime: string; // 插入时间
      modifyTime: string; // 修改时间
      role: string; // 艺人身份 多选，逗号分隔 0 歌手 1 音乐人 2 DJ 3 声优 4 曲艺家 5 主播 6 UGC 7 演奏家 8 指挥家 9 作词 10 作曲 11 编曲 12 制作人 13 演员 14 主持人 15 其他 16 混音师
      grade: number; // 艺人等级 解释：根据歌手热度等指标评定划分的歌手等级 默认值：0 定义如下： 0 未知 1  S 2  A 3  B 4  C 5  D 6  E
      singerFrom: string; // 艺人来源 1 唱片公司提供 2 信息自助管理平台上传 3 阅文集团提供 4 企鹅FM提供 5 TME音乐人提供 6 TME音乐人BD提供 7 TME音乐人机构提供 8 合作平台 9 Q音白曲库 10 酷狗白曲库 11 酷我白曲库 12 爱听白曲库 13 Q音灰曲库 14 酷狗灰曲库 15 酷我灰曲库 16 爱听灰曲库 17 互联网爬取 18 视频爬取 19 懒人听书
      singerTag: string; // 艺人标签 多选，逗号分隔 (0 原创|1 翻唱)
      genre: string; // 一级流派
      subGenre: string; // 二级流派
      nickname: string; // 艺人昵称
    }>;
  };
  traceId: string;
}

/**
 * 艺人分页查询
 */
export async function postSingerPage(
  data?: any,
  config?: AxiosRequestConfig,
): Promise<PostSingerPageRes> {
  return request(data, {
    url: '/singer/page',
    method: 'post',
    ...config,
  });
}

export interface GetSingerIdRes {
  code: string; // 返回编码
  msg: string; // 返回消息
  data: {
    albumNum: number; // 专辑数量
    trackNum: number; // 歌曲数量
    mvNum: number; // 视频数量
    ktrackNum: number; // 伴奏数量
    kalbumNum: number; // 伴奏专辑数量
    longAlbumNum: number; // 节目专辑数量
    longTrackNum: number; // 作品单集数量
    singerPhotos: Array<{
      singerId: number; // 艺人ID 同t_singer.Fsinger_id
      isOfficial: number; // 是否官方 默认值：0 0 否 1 是
      id: number;
      photoUsing: number; // 是否使用中 解释：图片删除了，Fusing=0 默认值：0 定义： 0 未使用 1 使用中
      orderIndex: number; // 图片顺序 多图的顺序index 默认：0 代表第一张
      photoPath: string; // 图存储 解释：cos中路径，用竖线隔开，可用于生成下载url。 Appid|Bucket|ObjectPath
      photoUrl: string; // 图片url 解释：拼接的下载url
      md5: string; // 文件md5 解释：文件md5值，用于判断文件是否变化
      photoSize: number; // 源图文件大小
      photoHeight: number; // 源图高
      photoWidth: number; // 源图宽
      qCfs: string; // Q音图存储 解释：跟Q音曲库保持一致；存储可能有多种，cfs、cos、http
      qUrl: string; // Q音图片url 解释：下载url
      insertTime: string; // 插入时间
      modifyTime: string; // 修改时间
    }>;
    singerMap: {
      id: number;
      globalId: number; // TME ID
      qqId: number; // Q音ID
      kgId: number; // 酷狗ID
      kwId: number; // 酷我ID
      umId: number; // 爱听ID
      lrId: number;
      tempId: number;
      musicianId: number; // 音乐人
      insertTime: string; // 插入时间
      modifyTime: string; // 修改时间
      insertFrom: number; // 数据来源 0 未知 1 系统对接 2 人工创建 3 历史曲库迁移 4 批量导入 5 自助管理平台 6 音乐人 7 Q音上报 8 酷我上报 9 酷狗上报 10 Q音主播 11 酷我主播 12 酷狗主播 13 爱听上报 14 K歌上报 15 TME曲库同步 16 懒人听书 17 懒人主播 18 TME Live 19 高危曲库 20 互联网爬取
    };
    singerId: number; // TME艺人ID
    srcSingerId: number; // 官方艺人ID 解释：国际标准人名区别码（ISNI）
    srcSingerName: string; // 官方艺人名
    singerName: string; // 艺人名
    transName: string; // 艺人翻译名
    otherName: string; // 艺人其他名
    nameSpell: string; // 艺人名拼音
    area: number; // 活跃地区 解释：歌手主要的活动地区 默认值：6 定义如下： 0  港台 1  内地 2  日韩 3  欧美 4  其他 5  东南亚 6  未知
    birthCountry: number; // 出生国家/地区 解释：歌手的出生国家 <p> 默认值：0 定义如下： 0 未知 1 香港 2 台湾 3 内地 4 日本 5 韩国 6 美国 7 英国 8 法国 9 德国 10 俄罗斯 11 西班牙 12 意大利 13 丹麦 14 澳大利亚 15 加拿大 16 葡萄牙 17 波兰 18 希腊 19 巴西 20 印度 21 泰国 22 印尼 23 埃及 24 马来西亚 25 阿拉伯 26 瑞典 27 荷兰 28 挪威 29 芬兰 30 爱尔兰 31 比利时 32 奥地利 33 罗马尼亚 34 瑞士 35 新西兰 36 墨西哥 37 牙买加 38 阿根廷 39 匈牙利 40 土耳其 41 捷克 42 冰岛 43 乌克兰 44 新加坡 45 以色列 46 南非 47 东南亚 48 波多黎各 49 菲律宾 50 古巴 51 爱沙尼亚 52 哥伦比亚 53 伊朗 54 黎巴嫩 55 保加利亚 56 智利 57 斯洛伐克 58 亚美尼亚 59 拉脱维亚 60 立陶宛 61 乌兹别克斯坦 62 委内瑞拉 63 越南 64 阿尔及利亚 65 阿塞拜疆 66 白俄罗斯 67 马耳他 68 巴基斯坦 69 尼日利亚 70 秘鲁 71 斯洛文尼亚 72 南斯拉夫 73 塞浦路斯 74 格鲁吉亚 75 马里 76 特立尼达和多巴哥 77 巴哈马 78 海地 79 克罗地亚 80 科特迪瓦 81 吉尔吉斯坦 82 澳门 83 斯威士兰 84 阿富汗 85 安哥拉 86 玻利维亚 87 文莱 88 喀麦隆 89 佛得角 90 哥斯达黎加 91 吉布提 92 多米尼加共和国 93 萨尔瓦多 94 几内亚 95 洪都拉斯 96 伊拉克 97 约旦 98 科威特 99 卢森堡 100 马里亚纳群岛 101 摩纳哥 102 蒙古 103 荷属安德烈斯 104 尼加拉瓜 105 尼日尔 106 圣马力诺 107 塞内加尔 108 斯里兰卡 109 突尼斯 110 阿拉伯联合酋长国 111 乌拉圭 112 缅甸 113 朝鲜
    type: number; // 艺人类型 解释：根据歌手性别或属性划分的类型 默认值：0 定义如下： 0 男 1 女 2 组合 3 其他 4 影视 5 虚拟 6 综艺 7 团体
    status: number; // 艺人状态 解释：歌手在曲库中的状态 默认值：1 定义如下： 0  停用 1  上架
    isHot: number; // 热门艺人 解释：集团各平台热门艺人标识 默认值：0 定义如下： 0否 1是
    replaceSingerId: number; // 保留歌手ID
    singerDesc: string; // 艺人简介
    createUser: string; // 创建人
    insertTime: string; // 插入时间
    modifyTime: string; // 修改时间
    role: string; // 艺人身份 多选，逗号分隔 0 歌手 1 音乐人 2 DJ 3 声优 4 曲艺家 5 主播 6 UGC 7 演奏家 8 指挥家 9 作词 10 作曲 11 编曲 12 制作人 13 演员 14 主持人 15 其他 16 混音师
    grade: number; // 艺人等级 解释：根据歌手热度等指标评定划分的歌手等级 默认值：0 定义如下： 0 未知 1  S 2  A 3  B 4  C 5  D 6  E
    singerFrom: string; // 艺人来源 1 唱片公司提供 2 信息自助管理平台上传 3 阅文集团提供 4 企鹅FM提供 5 TME音乐人提供 6 TME音乐人BD提供 7 TME音乐人机构提供 8 合作平台 9 Q音白曲库 10 酷狗白曲库 11 酷我白曲库 12 爱听白曲库 13 Q音灰曲库 14 酷狗灰曲库 15 酷我灰曲库 16 爱听灰曲库 17 互联网爬取 18 视频爬取 19 懒人听书
    singerTag: string; // 艺人标签 多选，逗号分隔 (0 原创|1 翻唱)
    genre: string; // 一级流派
    subGenre: string; // 二级流派
    nickname: string; // 艺人昵称
  };
  traceId: string;
}

/**
 * 获取艺人详细信息
 */
export async function getSingerId(
  id: string | number,
  data?: any,
  config?: AxiosRequestConfig,
): Promise<GetSingerIdRes> {
  return request(data, {
    url: `/singer/${id}`,
    method: 'get',
    ...config,
  });
}

export interface PostSingerRes {
  code: string; // 返回编码
  msg: string; // 返回消息
  data: boolean; // 返回数据
  traceId: string;
}

/**
 * 艺人录入
 */
export async function postSinger(data?: any, config?: AxiosRequestConfig): Promise<PostSingerRes> {
  return request(data, {
    url: '/singer',
    method: 'post',
    ...config,
  });
}

export interface PutSingerIdRes {
  code: string; // 返回编码
  msg: string; // 返回消息
  data: boolean; // 返回数据
  traceId: string;
}

/**
 * 艺人修改
 */
export async function putSingerId(
  id: string | number,
  data?: any,
  config?: AxiosRequestConfig,
): Promise<PutSingerIdRes> {
  return request(data, {
    url: `/singer/${id}`,
    method: 'put',
    ...config,
  });
}

export interface PutSingerBatchRes {
  code: string; // 返回编码
  msg: string; // 返回消息
  data: boolean; // 返回数据
  traceId: string;
}

/**
 * 艺人批量修改
 */
export async function putSingerBatch(
  data?: any,
  config?: AxiosRequestConfig,
): Promise<PutSingerBatchRes> {
  return request(data, {
    url: '/singer/batch',
    method: 'put',
    ...config,
  });
}

export interface PutSingerMoveRes {
  code: string; // 返回编码
  msg: string; // 返回消息
  data: boolean; // 返回数据
  traceId: string;
}

/**
 * 艺人迁移
 */
export async function putSingerMove(
  data?: any,
  config?: AxiosRequestConfig,
): Promise<PutSingerMoveRes> {
  return request(data, {
    url: '/singer/move',
    method: 'put',
    ...config,
  });
}

export interface PostSingerMovePageRes {
  code: string; // 返回编码
  msg: string; // 返回消息
  data: {
    current: number;
    pageSize: number;
    total: number;
    list: Array<{
      originSinger: {
        singerId: number; // TME艺人ID
        srcSingerId: number; // 官方艺人ID 解释：国际标准人名区别码（ISNI）
        srcSingerName: string; // 官方艺人名
        singerName: string; // 艺人名
        transName: string; // 艺人翻译名
        otherName: string; // 艺人其他名
        nameSpell: string; // 艺人名拼音
        area: number; // 活跃地区 解释：歌手主要的活动地区 默认值：6 定义如下： 0  港台 1  内地 2  日韩 3  欧美 4  其他 5  东南亚 6  未知
        birthCountry: number; // 出生国家/地区 解释：歌手的出生国家 <p> 默认值：0 定义如下： 0 未知 1 香港 2 台湾 3 内地 4 日本 5 韩国 6 美国 7 英国 8 法国 9 德国 10 俄罗斯 11 西班牙 12 意大利 13 丹麦 14 澳大利亚 15 加拿大 16 葡萄牙 17 波兰 18 希腊 19 巴西 20 印度 21 泰国 22 印尼 23 埃及 24 马来西亚 25 阿拉伯 26 瑞典 27 荷兰 28 挪威 29 芬兰 30 爱尔兰 31 比利时 32 奥地利 33 罗马尼亚 34 瑞士 35 新西兰 36 墨西哥 37 牙买加 38 阿根廷 39 匈牙利 40 土耳其 41 捷克 42 冰岛 43 乌克兰 44 新加坡 45 以色列 46 南非 47 东南亚 48 波多黎各 49 菲律宾 50 古巴 51 爱沙尼亚 52 哥伦比亚 53 伊朗 54 黎巴嫩 55 保加利亚 56 智利 57 斯洛伐克 58 亚美尼亚 59 拉脱维亚 60 立陶宛 61 乌兹别克斯坦 62 委内瑞拉 63 越南 64 阿尔及利亚 65 阿塞拜疆 66 白俄罗斯 67 马耳他 68 巴基斯坦 69 尼日利亚 70 秘鲁 71 斯洛文尼亚 72 南斯拉夫 73 塞浦路斯 74 格鲁吉亚 75 马里 76 特立尼达和多巴哥 77 巴哈马 78 海地 79 克罗地亚 80 科特迪瓦 81 吉尔吉斯坦 82 澳门 83 斯威士兰 84 阿富汗 85 安哥拉 86 玻利维亚 87 文莱 88 喀麦隆 89 佛得角 90 哥斯达黎加 91 吉布提 92 多米尼加共和国 93 萨尔瓦多 94 几内亚 95 洪都拉斯 96 伊拉克 97 约旦 98 科威特 99 卢森堡 100 马里亚纳群岛 101 摩纳哥 102 蒙古 103 荷属安德烈斯 104 尼加拉瓜 105 尼日尔 106 圣马力诺 107 塞内加尔 108 斯里兰卡 109 突尼斯 110 阿拉伯联合酋长国 111 乌拉圭 112 缅甸 113 朝鲜
        type: number; // 艺人类型 解释：根据歌手性别或属性划分的类型 默认值：0 定义如下： 0 男 1 女 2 组合 3 其他 4 影视 5 虚拟 6 综艺 7 团体
        status: number; // 艺人状态 解释：歌手在曲库中的状态 默认值：1 定义如下： 0  停用 1  上架
        isHot: number; // 热门艺人 解释：集团各平台热门艺人标识 默认值：0 定义如下： 0否 1是
        replaceSingerId: number; // 保留歌手ID
        singerDesc: string; // 艺人简介
        createUser: string; // 创建人
        insertTime: string; // 插入时间
        modifyTime: string; // 修改时间
        role: string; // 艺人身份 多选，逗号分隔 0 歌手 1 音乐人 2 DJ 3 声优 4 曲艺家 5 主播 6 UGC 7 演奏家 8 指挥家 9 作词 10 作曲 11 编曲 12 制作人 13 演员 14 主持人 15 其他 16 混音师
        grade: number; // 艺人等级 解释：根据歌手热度等指标评定划分的歌手等级 默认值：0 定义如下： 0 未知 1  S 2  A 3  B 4  C 5  D 6  E
        singerFrom: string; // 艺人来源 1 唱片公司提供 2 信息自助管理平台上传 3 阅文集团提供 4 企鹅FM提供 5 TME音乐人提供 6 TME音乐人BD提供 7 TME音乐人机构提供 8 合作平台 9 Q音白曲库 10 酷狗白曲库 11 酷我白曲库 12 爱听白曲库 13 Q音灰曲库 14 酷狗灰曲库 15 酷我灰曲库 16 爱听灰曲库 17 互联网爬取 18 视频爬取 19 懒人听书
        singerTag: string; // 艺人标签 多选，逗号分隔 (0 原创|1 翻唱)
        genre: string; // 一级流派
        subGenre: string; // 二级流派
        nickname: string; // 艺人昵称
      };
      targetSinger: {
        singerId: number; // TME艺人ID
        srcSingerId: number; // 官方艺人ID 解释：国际标准人名区别码（ISNI）
        srcSingerName: string; // 官方艺人名
        singerName: string; // 艺人名
        transName: string; // 艺人翻译名
        otherName: string; // 艺人其他名
        nameSpell: string; // 艺人名拼音
        area: number; // 活跃地区 解释：歌手主要的活动地区 默认值：6 定义如下： 0  港台 1  内地 2  日韩 3  欧美 4  其他 5  东南亚 6  未知
        birthCountry: number; // 出生国家/地区 解释：歌手的出生国家 <p> 默认值：0 定义如下： 0 未知 1 香港 2 台湾 3 内地 4 日本 5 韩国 6 美国 7 英国 8 法国 9 德国 10 俄罗斯 11 西班牙 12 意大利 13 丹麦 14 澳大利亚 15 加拿大 16 葡萄牙 17 波兰 18 希腊 19 巴西 20 印度 21 泰国 22 印尼 23 埃及 24 马来西亚 25 阿拉伯 26 瑞典 27 荷兰 28 挪威 29 芬兰 30 爱尔兰 31 比利时 32 奥地利 33 罗马尼亚 34 瑞士 35 新西兰 36 墨西哥 37 牙买加 38 阿根廷 39 匈牙利 40 土耳其 41 捷克 42 冰岛 43 乌克兰 44 新加坡 45 以色列 46 南非 47 东南亚 48 波多黎各 49 菲律宾 50 古巴 51 爱沙尼亚 52 哥伦比亚 53 伊朗 54 黎巴嫩 55 保加利亚 56 智利 57 斯洛伐克 58 亚美尼亚 59 拉脱维亚 60 立陶宛 61 乌兹别克斯坦 62 委内瑞拉 63 越南 64 阿尔及利亚 65 阿塞拜疆 66 白俄罗斯 67 马耳他 68 巴基斯坦 69 尼日利亚 70 秘鲁 71 斯洛文尼亚 72 南斯拉夫 73 塞浦路斯 74 格鲁吉亚 75 马里 76 特立尼达和多巴哥 77 巴哈马 78 海地 79 克罗地亚 80 科特迪瓦 81 吉尔吉斯坦 82 澳门 83 斯威士兰 84 阿富汗 85 安哥拉 86 玻利维亚 87 文莱 88 喀麦隆 89 佛得角 90 哥斯达黎加 91 吉布提 92 多米尼加共和国 93 萨尔瓦多 94 几内亚 95 洪都拉斯 96 伊拉克 97 约旦 98 科威特 99 卢森堡 100 马里亚纳群岛 101 摩纳哥 102 蒙古 103 荷属安德烈斯 104 尼加拉瓜 105 尼日尔 106 圣马力诺 107 塞内加尔 108 斯里兰卡 109 突尼斯 110 阿拉伯联合酋长国 111 乌拉圭 112 缅甸 113 朝鲜
        type: number; // 艺人类型 解释：根据歌手性别或属性划分的类型 默认值：0 定义如下： 0 男 1 女 2 组合 3 其他 4 影视 5 虚拟 6 综艺 7 团体
        status: number; // 艺人状态 解释：歌手在曲库中的状态 默认值：1 定义如下： 0  停用 1  上架
        isHot: number; // 热门艺人 解释：集团各平台热门艺人标识 默认值：0 定义如下： 0否 1是
        replaceSingerId: number; // 保留歌手ID
        singerDesc: string; // 艺人简介
        createUser: string; // 创建人
        insertTime: string; // 插入时间
        modifyTime: string; // 修改时间
        role: string; // 艺人身份 多选，逗号分隔 0 歌手 1 音乐人 2 DJ 3 声优 4 曲艺家 5 主播 6 UGC 7 演奏家 8 指挥家 9 作词 10 作曲 11 编曲 12 制作人 13 演员 14 主持人 15 其他 16 混音师
        grade: number; // 艺人等级 解释：根据歌手热度等指标评定划分的歌手等级 默认值：0 定义如下： 0 未知 1  S 2  A 3  B 4  C 5  D 6  E
        singerFrom: string; // 艺人来源 1 唱片公司提供 2 信息自助管理平台上传 3 阅文集团提供 4 企鹅FM提供 5 TME音乐人提供 6 TME音乐人BD提供 7 TME音乐人机构提供 8 合作平台 9 Q音白曲库 10 酷狗白曲库 11 酷我白曲库 12 爱听白曲库 13 Q音灰曲库 14 酷狗灰曲库 15 酷我灰曲库 16 爱听灰曲库 17 互联网爬取 18 视频爬取 19 懒人听书
        singerTag: string; // 艺人标签 多选，逗号分隔 (0 原创|1 翻唱)
        genre: string; // 一级流派
        subGenre: string; // 二级流派
        nickname: string; // 艺人昵称
      };
      id: number;
      originSingerId: number; // 原艺人ID
      targetSingerId: number; // 目标艺人ID
      executeTime: string; // 执行时间
      operator: string; // 操作人
      insertTime: string; // 插入时间
      modifyTime: string; // 修改时间
      transferResult: string; // 迁移结果
      invalidSinger: number; // 是否停用原艺人
    }>;
  };
  traceId: string;
}

/**
 * 艺人迁移分页查询
 */
export async function postSingerMovePage(
  data?: any,
  config?: AxiosRequestConfig,
): Promise<PostSingerMovePageRes> {
  return request(data, {
    url: '/singer/move/page',
    method: 'post',
    ...config,
  });
}

export interface PostSingerListRes {
  code: string; // 返回编码
  msg: string; // 返回消息
  data: Array<{
    singerId: number; // TME艺人ID
    srcSingerId: number; // 官方艺人ID 解释：国际标准人名区别码（ISNI）
    srcSingerName: string; // 官方艺人名
    singerName: string; // 艺人名
    transName: string; // 艺人翻译名
    otherName: string; // 艺人其他名
    nameSpell: string; // 艺人名拼音
    area: number; // 活跃地区 解释：歌手主要的活动地区 默认值：6 定义如下： 0  港台 1  内地 2  日韩 3  欧美 4  其他 5  东南亚 6  未知
    birthCountry: number; // 出生国家/地区 解释：歌手的出生国家 <p> 默认值：0 定义如下： 0 未知 1 香港 2 台湾 3 内地 4 日本 5 韩国 6 美国 7 英国 8 法国 9 德国 10 俄罗斯 11 西班牙 12 意大利 13 丹麦 14 澳大利亚 15 加拿大 16 葡萄牙 17 波兰 18 希腊 19 巴西 20 印度 21 泰国 22 印尼 23 埃及 24 马来西亚 25 阿拉伯 26 瑞典 27 荷兰 28 挪威 29 芬兰 30 爱尔兰 31 比利时 32 奥地利 33 罗马尼亚 34 瑞士 35 新西兰 36 墨西哥 37 牙买加 38 阿根廷 39 匈牙利 40 土耳其 41 捷克 42 冰岛 43 乌克兰 44 新加坡 45 以色列 46 南非 47 东南亚 48 波多黎各 49 菲律宾 50 古巴 51 爱沙尼亚 52 哥伦比亚 53 伊朗 54 黎巴嫩 55 保加利亚 56 智利 57 斯洛伐克 58 亚美尼亚 59 拉脱维亚 60 立陶宛 61 乌兹别克斯坦 62 委内瑞拉 63 越南 64 阿尔及利亚 65 阿塞拜疆 66 白俄罗斯 67 马耳他 68 巴基斯坦 69 尼日利亚 70 秘鲁 71 斯洛文尼亚 72 南斯拉夫 73 塞浦路斯 74 格鲁吉亚 75 马里 76 特立尼达和多巴哥 77 巴哈马 78 海地 79 克罗地亚 80 科特迪瓦 81 吉尔吉斯坦 82 澳门 83 斯威士兰 84 阿富汗 85 安哥拉 86 玻利维亚 87 文莱 88 喀麦隆 89 佛得角 90 哥斯达黎加 91 吉布提 92 多米尼加共和国 93 萨尔瓦多 94 几内亚 95 洪都拉斯 96 伊拉克 97 约旦 98 科威特 99 卢森堡 100 马里亚纳群岛 101 摩纳哥 102 蒙古 103 荷属安德烈斯 104 尼加拉瓜 105 尼日尔 106 圣马力诺 107 塞内加尔 108 斯里兰卡 109 突尼斯 110 阿拉伯联合酋长国 111 乌拉圭 112 缅甸 113 朝鲜
    type: number; // 艺人类型 解释：根据歌手性别或属性划分的类型 默认值：0 定义如下： 0 男 1 女 2 组合 3 其他 4 影视 5 虚拟 6 综艺 7 团体
    status: number; // 艺人状态 解释：歌手在曲库中的状态 默认值：1 定义如下： 0  停用 1  上架
    isHot: number; // 热门艺人 解释：集团各平台热门艺人标识 默认值：0 定义如下： 0否 1是
    replaceSingerId: number; // 保留歌手ID
    singerDesc: string; // 艺人简介
    createUser: string; // 创建人
    insertTime: string; // 插入时间
    modifyTime: string; // 修改时间
    role: string; // 艺人身份 多选，逗号分隔 0 歌手 1 音乐人 2 DJ 3 声优 4 曲艺家 5 主播 6 UGC 7 演奏家 8 指挥家 9 作词 10 作曲 11 编曲 12 制作人 13 演员 14 主持人 15 其他 16 混音师
    grade: number; // 艺人等级 解释：根据歌手热度等指标评定划分的歌手等级 默认值：0 定义如下： 0 未知 1  S 2  A 3  B 4  C 5  D 6  E
    singerFrom: string; // 艺人来源 1 唱片公司提供 2 信息自助管理平台上传 3 阅文集团提供 4 企鹅FM提供 5 TME音乐人提供 6 TME音乐人BD提供 7 TME音乐人机构提供 8 合作平台 9 Q音白曲库 10 酷狗白曲库 11 酷我白曲库 12 爱听白曲库 13 Q音灰曲库 14 酷狗灰曲库 15 酷我灰曲库 16 爱听灰曲库 17 互联网爬取 18 视频爬取 19 懒人听书
    singerTag: string; // 艺人标签 多选，逗号分隔 (0 原创|1 翻唱)
    genre: string; // 一级流派
    subGenre: string; // 二级流派
    nickname: string; // 艺人昵称
  }>;
  traceId: string;
}

/**
 * 获取艺人基础信息集合
 */
export async function postSingerList(
  data?: any,
  config?: AxiosRequestConfig,
): Promise<PostSingerListRes> {
  return request(data, {
    url: '/singer/list',
    method: 'post',
    ...config,
  });
}
